home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / g_man / cat3 / OpenGL-ftn / fglrasterpos.z / fglrasterpos
Encoding:
Text File  |  2002-10-03  |  18.1 KB  |  199 lines

  1.  
  2.  
  3.  
  4. ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss((((3333GGGG))))               OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee               ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss((((3333GGGG))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222dddd,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222ffff,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222iiii,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222ssss,,,,
  10.      ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333dddd,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333ffff,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333iiii,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333ssss,,,,
  11.      ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444dddd,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444ffff,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444iiii,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444ssss,,,,
  12.      ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222ddddvvvv,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222ffffvvvv,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222iiiivvvv,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222ssssvvvv,,,,
  13.      ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333ddddvvvv,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333ffffvvvv,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333iiiivvvv,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333ssssvvvv,,,,
  14.      ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444ddddvvvv,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444ffffvvvv,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444iiiivvvv,,,, ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444ssssvvvv -
  15.      specify the raster position for pixel operations
  16.  
  17.  
  18. FFFFOOOORRRRTTTTRRRRAAAANNNN SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
  19.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222dddd( REAL*4 _x,
  20.                                 REAL*4 _y )
  21.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222ffff( REAL*4 _x,
  22.                                 REAL*4 _y )
  23.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222iiii( INTEGER*4 _x,
  24.                                 INTEGER*4 _y )
  25.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222ssss( INTEGER*2 _x,
  26.                                 INTEGER*2 _y )
  27.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333dddd( REAL*4 _x,
  28.                                 REAL*4 _y,
  29.                                 REAL*4 _z )
  30.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333ffff( REAL*4 _x,
  31.                                 REAL*4 _y,
  32.                                 REAL*4 _z )
  33.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333iiii( INTEGER*4 _x,
  34.                                 INTEGER*4 _y,
  35.                                 INTEGER*4 _z )
  36.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333ssss( INTEGER*2 _x,
  37.                                 INTEGER*2 _y,
  38.                                 INTEGER*2 _z )
  39.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444dddd( REAL*4 _x,
  40.                                 REAL*4 _y,
  41.                                 REAL*4 _z,
  42.                                 REAL*4 _w )
  43.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444ffff( REAL*4 _x,
  44.                                 REAL*4 _y,
  45.                                 REAL*4 _z,
  46.                                 REAL*4 _w )
  47.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444iiii( INTEGER*4 _x,
  48.                                 INTEGER*4 _y,
  49.                                 INTEGER*4 _z,
  50.                                 INTEGER*4 _w )
  51.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444ssss( INTEGER*2 _x,
  52.                                 INTEGER*2 _y,
  53.                                 INTEGER*2 _z,
  54.                                 INTEGER*2 _w )
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss((((3333GGGG))))               OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee               ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss((((3333GGGG))))
  71.  
  72.  
  73.  
  74. PARAMETERS
  75.      _x, _y, _z, _w
  76.               Specify the x, y, z, and w object coordinates (if present) for
  77.               the raster position.
  78.  
  79. FFFFOOOORRRRTTTTRRRRAAAANNNN SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
  80.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222ddddvvvv( CHARACTER*8 _v )
  81.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222ffffvvvv( CHARACTER*8 _v )
  82.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222iiiivvvv( CHARACTER*8 _v )
  83.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222ssssvvvv( CHARACTER*8 _v )
  84.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333ddddvvvv( CHARACTER*8 _v )
  85.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333ffffvvvv( CHARACTER*8 _v )
  86.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333iiiivvvv( CHARACTER*8 _v )
  87.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333ssssvvvv( CHARACTER*8 _v )
  88.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444ddddvvvv( CHARACTER*8 _v )
  89.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444ffffvvvv( CHARACTER*8 _v )
  90.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444iiiivvvv( CHARACTER*8 _v )
  91.      SUBROUTINE ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444ssssvvvv( CHARACTER*8 _v )
  92.  
  93.  
  94. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  95.      _v    Specifies a pointer to an array of two, three, or four elements,
  96.           specifying x, y, z, and w coordinates, respectively.
  97.  
  98. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  99.      The GL maintains a 3D position in window coordinates.  This position,
  100.      called the raster position, is used to position pixel and bitmap write
  101.      operations. It is maintained with subpixel accuracy.  See ffffggggllllBBBBiiiittttmmmmaaaapppp,
  102.      ffffggggllllDDDDrrrraaaawwwwPPPPiiiixxxxeeeellllssss, and ffffggggllllCCCCooooppppyyyyPPPPiiiixxxxeeeellllssss.
  103.  
  104.      The current raster position consists of three window coordinates (x, y,
  105.      z), a clip coordinate value (w), an eye coordinate distance, a valid bit,
  106.      and associated color data and texture coordinates.  The w coordinate is a
  107.      clip coordinate, because w is not projected to window coordinates.
  108.      ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss4444 specifies object coordinates x, y, z, and w explicitly.
  109.      ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss3333 specifies object coordinate x, y, and z explicitly, while w
  110.      is implicitly set to 1.  ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss2222 uses the argument values for x and
  111.      y while implicitly setting z and w to 0 and 1.
  112.  
  113.      The object coordinates presented by ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss are treated just like
  114.      those of a ffffggggllllVVVVeeeerrrrtttteeeexxxx command:  They are transformed by the current
  115.      modelview and projection matrices and passed to the clipping stage.  If
  116.      the vertex is not culled, then it is projected and scaled to window
  117.      coordinates, which become the new current raster position, and the
  118.      GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____PPPPOOOOSSSSIIIITTTTIIIIOOOONNNN____VVVVAAAALLLLIIIIDDDD flag is set.  If the vertex _i_s culled,
  119.      then the valid bit is cleared and the current raster position and
  120.      associated color and texture coordinates are undefined.
  121.  
  122.      The current raster position also includes some associated color data and
  123.      texture coordinates.  If lighting is enabled, then
  124.      GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____CCCCOOOOLLLLOOOORRRR (in RGBA mode) or GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____IIIINNNNDDDDEEEEXXXX (in
  125.      color index mode) is set to the color produced by the lighting
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss((((3333GGGG))))               OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee               ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss((((3333GGGG))))
  137.  
  138.  
  139.  
  140.      calculation (see ffffggggllllLLLLiiiigggghhhhtttt, ffffggggllllLLLLiiiigggghhhhttttMMMMooooddddeeeellll, and
  141.      ffffggggllllSSSShhhhaaaaddddeeeeMMMMooooddddeeeellll).  If lighting is disabled, current color (in RGBA mode,
  142.      state variable GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____CCCCOOOOLLLLOOOORRRR) or color index (in color index mode,
  143.      state variable GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____IIIINNNNDDDDEEEEXXXX) is used to update the current raster
  144.      color.
  145.  
  146.      Likewise, GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____TTTTEEEEXXXXTTTTUUUURRRREEEE____CCCCOOOOOOOORRRRDDDDSSSS is updated as a function of
  147.      GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____TTTTEEEEXXXXTTTTUUUURRRREEEE____CCCCOOOOOOOORRRRDDDDSSSS, based on the texture matrix and the texture
  148.      generation functions (see ffffggggllllTTTTeeeexxxxGGGGeeeennnn).  Finally, the distance from the
  149.      origin of the eye coordinate system to the vertex as transformed by only
  150.      the modelview matrix replaces GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____DDDDIIIISSSSTTTTAAAANNNNCCCCEEEE.
  151.  
  152.      Initially, the current raster position is (0, 0, 0, 1), the current
  153.      raster distance is 0, the valid bit is set, the associated RGBA color is
  154.      (1, 1, 1, 1), the associated color index is 1, and the associated texture
  155.      coordinates are (0, 0, 0, 1).  In RGBA mode, GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____IIIINNNNDDDDEEEEXXXX is
  156.      always 1; in color index mode, the current raster RGBA color always
  157.      maintains its initial value.
  158.  
  159. NNNNOOOOTTTTEEEESSSS
  160.      The raster position is modified both by ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss and by ffffggggllllBBBBiiiittttmmmmaaaapppp.
  161.  
  162.      When the raster position coordinates are invalid, drawing commands that
  163.      are based on the raster position are ignored (that is, they do not result
  164.      in changes to GL state).
  165.  
  166.      Calling ffffggggllllDDDDrrrraaaawwwwEEEElllleeeemmmmeeeennnnttttssss, or ffffggggllllDDDDrrrraaaawwwwRRRRaaaannnnggggeeeeEEEElllleeeemmmmeeeennnnttttssss may leave the current
  167.      color or index indeterminate.  If ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss is executed while the
  168.      current color or index is indeterminate, the current raster color or
  169.      current raster index remains indeterminate.
  170.  
  171.      To set a valid raster position outside the viewport, first set a valid
  172.      raster position, then call ffffggggllllBBBBiiiittttmmmmaaaapppp with NULL as the _b_i_t_m_a_p parameter.
  173.  
  174. EEEERRRRRRRROOOORRRRSSSS
  175.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____OOOOPPPPEEEERRRRAAAATTTTIIIIOOOONNNN is generated if ffffggggllllRRRRaaaasssstttteeeerrrrPPPPoooossss is executed between the
  176.      execution of ffffggggllllBBBBeeeeggggiiiinnnn and the corresponding execution of ffffggggllllEEEEnnnndddd.
  177.  
  178. AAAASSSSSSSSOOOOCCCCIIIIAAAATTTTEEEEDDDD GGGGEEEETTTTSSSS
  179.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____PPPPOOOOSSSSIIIITTTTIIIIOOOONNNN
  180.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____PPPPOOOOSSSSIIIITTTTIIIIOOOONNNN____VVVVAAAALLLLIIIIDDDD
  181.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____DDDDIIIISSSSTTTTAAAANNNNCCCCEEEE
  182.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____CCCCOOOOLLLLOOOORRRR
  183.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____IIIINNNNDDDDEEEEXXXX
  184.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____CCCCUUUURRRRRRRREEEENNNNTTTT____RRRRAAAASSSSTTTTEEEERRRR____TTTTEEEEXXXXTTTTUUUURRRREEEE____CCCCOOOOOOOORRRRDDDDSSSS
  185.  
  186.  
  187. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  188.      ffffggggllllBBBBiiiittttmmmmaaaapppp, ffffggggllllCCCCooooppppyyyyPPPPiiiixxxxeeeellllssss, ffffggggllllDDDDrrrraaaawwwwAAAArrrrrrrraaaayyyyssss, ffffggggllllDDDDrrrraaaawwwwEEEElllleeeemmmmeeeennnnttttssss,
  189.      ffffggggllllDDDDrrrraaaawwwwRRRRaaaannnnggggeeeeEEEElllleeeemmmmeeeennnnttttssss, ffffggggllllDDDDrrrraaaawwwwPPPPiiiixxxxeeeellllssss, ffffggggllllLLLLiiiigggghhhhtttt, ffffggggllllLLLLiiiigggghhhhttttMMMMooooddddeeeellll,
  190.      ffffggggllllSSSShhhhaaaaddddeeeeMMMMooooddddeeeellll, ffffggggllllTTTTeeeexxxxCCCCoooooooorrrrdddd, ffffggggllllTTTTeeeexxxxGGGGeeeennnn, ffffggggllllVVVVeeeerrrrtttteeeexxxx
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.